package com.ten.mall.vo;

import java.util.ArrayList;
import java.util.List;

public class DoctorExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DoctorExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDoctorNameIsNull() {
            addCriterion("doctor_name is null");
            return (Criteria) this;
        }

        public Criteria andDoctorNameIsNotNull() {
            addCriterion("doctor_name is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorNameEqualTo(String value) {
            addCriterion("doctor_name =", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameNotEqualTo(String value) {
            addCriterion("doctor_name <>", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameGreaterThan(String value) {
            addCriterion("doctor_name >", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_name >=", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameLessThan(String value) {
            addCriterion("doctor_name <", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameLessThanOrEqualTo(String value) {
            addCriterion("doctor_name <=", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameLike(String value) {
            addCriterion("doctor_name like", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameNotLike(String value) {
            addCriterion("doctor_name not like", value, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameIn(List<String> values) {
            addCriterion("doctor_name in", values, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameNotIn(List<String> values) {
            addCriterion("doctor_name not in", values, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameBetween(String value1, String value2) {
            addCriterion("doctor_name between", value1, value2, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorNameNotBetween(String value1, String value2) {
            addCriterion("doctor_name not between", value1, value2, "doctorName");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneIsNull() {
            addCriterion("doctor_telephone is null");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneIsNotNull() {
            addCriterion("doctor_telephone is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneEqualTo(String value) {
            addCriterion("doctor_telephone =", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneNotEqualTo(String value) {
            addCriterion("doctor_telephone <>", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneGreaterThan(String value) {
            addCriterion("doctor_telephone >", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_telephone >=", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneLessThan(String value) {
            addCriterion("doctor_telephone <", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneLessThanOrEqualTo(String value) {
            addCriterion("doctor_telephone <=", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneLike(String value) {
            addCriterion("doctor_telephone like", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneNotLike(String value) {
            addCriterion("doctor_telephone not like", value, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneIn(List<String> values) {
            addCriterion("doctor_telephone in", values, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneNotIn(List<String> values) {
            addCriterion("doctor_telephone not in", values, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneBetween(String value1, String value2) {
            addCriterion("doctor_telephone between", value1, value2, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorTelephoneNotBetween(String value1, String value2) {
            addCriterion("doctor_telephone not between", value1, value2, "doctorTelephone");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleIsNull() {
            addCriterion("doctor_gendle is null");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleIsNotNull() {
            addCriterion("doctor_gendle is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleEqualTo(String value) {
            addCriterion("doctor_gendle =", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleNotEqualTo(String value) {
            addCriterion("doctor_gendle <>", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleGreaterThan(String value) {
            addCriterion("doctor_gendle >", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_gendle >=", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleLessThan(String value) {
            addCriterion("doctor_gendle <", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleLessThanOrEqualTo(String value) {
            addCriterion("doctor_gendle <=", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleLike(String value) {
            addCriterion("doctor_gendle like", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleNotLike(String value) {
            addCriterion("doctor_gendle not like", value, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleIn(List<String> values) {
            addCriterion("doctor_gendle in", values, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleNotIn(List<String> values) {
            addCriterion("doctor_gendle not in", values, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleBetween(String value1, String value2) {
            addCriterion("doctor_gendle between", value1, value2, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorGendleNotBetween(String value1, String value2) {
            addCriterion("doctor_gendle not between", value1, value2, "doctorGendle");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalIsNull() {
            addCriterion("doctor_hospital is null");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalIsNotNull() {
            addCriterion("doctor_hospital is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalEqualTo(String value) {
            addCriterion("doctor_hospital =", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalNotEqualTo(String value) {
            addCriterion("doctor_hospital <>", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalGreaterThan(String value) {
            addCriterion("doctor_hospital >", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_hospital >=", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalLessThan(String value) {
            addCriterion("doctor_hospital <", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalLessThanOrEqualTo(String value) {
            addCriterion("doctor_hospital <=", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalLike(String value) {
            addCriterion("doctor_hospital like", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalNotLike(String value) {
            addCriterion("doctor_hospital not like", value, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalIn(List<String> values) {
            addCriterion("doctor_hospital in", values, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalNotIn(List<String> values) {
            addCriterion("doctor_hospital not in", values, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalBetween(String value1, String value2) {
            addCriterion("doctor_hospital between", value1, value2, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorHospitalNotBetween(String value1, String value2) {
            addCriterion("doctor_hospital not between", value1, value2, "doctorHospital");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiIsNull() {
            addCriterion("doctor_keshi is null");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiIsNotNull() {
            addCriterion("doctor_keshi is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiEqualTo(String value) {
            addCriterion("doctor_keshi =", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiNotEqualTo(String value) {
            addCriterion("doctor_keshi <>", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiGreaterThan(String value) {
            addCriterion("doctor_keshi >", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_keshi >=", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiLessThan(String value) {
            addCriterion("doctor_keshi <", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiLessThanOrEqualTo(String value) {
            addCriterion("doctor_keshi <=", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiLike(String value) {
            addCriterion("doctor_keshi like", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiNotLike(String value) {
            addCriterion("doctor_keshi not like", value, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiIn(List<String> values) {
            addCriterion("doctor_keshi in", values, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiNotIn(List<String> values) {
            addCriterion("doctor_keshi not in", values, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiBetween(String value1, String value2) {
            addCriterion("doctor_keshi between", value1, value2, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorKeshiNotBetween(String value1, String value2) {
            addCriterion("doctor_keshi not between", value1, value2, "doctorKeshi");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieIsNull() {
            addCriterion("doctor_jibie is null");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieIsNotNull() {
            addCriterion("doctor_jibie is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieEqualTo(String value) {
            addCriterion("doctor_jibie =", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieNotEqualTo(String value) {
            addCriterion("doctor_jibie <>", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieGreaterThan(String value) {
            addCriterion("doctor_jibie >", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_jibie >=", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieLessThan(String value) {
            addCriterion("doctor_jibie <", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieLessThanOrEqualTo(String value) {
            addCriterion("doctor_jibie <=", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieLike(String value) {
            addCriterion("doctor_jibie like", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieNotLike(String value) {
            addCriterion("doctor_jibie not like", value, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieIn(List<String> values) {
            addCriterion("doctor_jibie in", values, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieNotIn(List<String> values) {
            addCriterion("doctor_jibie not in", values, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieBetween(String value1, String value2) {
            addCriterion("doctor_jibie between", value1, value2, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorJibieNotBetween(String value1, String value2) {
            addCriterion("doctor_jibie not between", value1, value2, "doctorJibie");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameIsNull() {
            addCriterion("doctor_weName is null");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameIsNotNull() {
            addCriterion("doctor_weName is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameEqualTo(String value) {
            addCriterion("doctor_weName =", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameNotEqualTo(String value) {
            addCriterion("doctor_weName <>", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameGreaterThan(String value) {
            addCriterion("doctor_weName >", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_weName >=", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameLessThan(String value) {
            addCriterion("doctor_weName <", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameLessThanOrEqualTo(String value) {
            addCriterion("doctor_weName <=", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameLike(String value) {
            addCriterion("doctor_weName like", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameNotLike(String value) {
            addCriterion("doctor_weName not like", value, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameIn(List<String> values) {
            addCriterion("doctor_weName in", values, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameNotIn(List<String> values) {
            addCriterion("doctor_weName not in", values, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameBetween(String value1, String value2) {
            addCriterion("doctor_weName between", value1, value2, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorWenameNotBetween(String value1, String value2) {
            addCriterion("doctor_weName not between", value1, value2, "doctorWename");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkIsNull() {
            addCriterion("doctor_remark is null");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkIsNotNull() {
            addCriterion("doctor_remark is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkEqualTo(String value) {
            addCriterion("doctor_remark =", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkNotEqualTo(String value) {
            addCriterion("doctor_remark <>", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkGreaterThan(String value) {
            addCriterion("doctor_remark >", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_remark >=", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkLessThan(String value) {
            addCriterion("doctor_remark <", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkLessThanOrEqualTo(String value) {
            addCriterion("doctor_remark <=", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkLike(String value) {
            addCriterion("doctor_remark like", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkNotLike(String value) {
            addCriterion("doctor_remark not like", value, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkIn(List<String> values) {
            addCriterion("doctor_remark in", values, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkNotIn(List<String> values) {
            addCriterion("doctor_remark not in", values, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkBetween(String value1, String value2) {
            addCriterion("doctor_remark between", value1, value2, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorRemarkNotBetween(String value1, String value2) {
            addCriterion("doctor_remark not between", value1, value2, "doctorRemark");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailIsNull() {
            addCriterion("doctor_detail is null");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailIsNotNull() {
            addCriterion("doctor_detail is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailEqualTo(String value) {
            addCriterion("doctor_detail =", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailNotEqualTo(String value) {
            addCriterion("doctor_detail <>", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailGreaterThan(String value) {
            addCriterion("doctor_detail >", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_detail >=", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailLessThan(String value) {
            addCriterion("doctor_detail <", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailLessThanOrEqualTo(String value) {
            addCriterion("doctor_detail <=", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailLike(String value) {
            addCriterion("doctor_detail like", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailNotLike(String value) {
            addCriterion("doctor_detail not like", value, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailIn(List<String> values) {
            addCriterion("doctor_detail in", values, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailNotIn(List<String> values) {
            addCriterion("doctor_detail not in", values, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailBetween(String value1, String value2) {
            addCriterion("doctor_detail between", value1, value2, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorDetailNotBetween(String value1, String value2) {
            addCriterion("doctor_detail not between", value1, value2, "doctorDetail");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstIsNull() {
            addCriterion("doctor_first is null");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstIsNotNull() {
            addCriterion("doctor_first is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstEqualTo(String value) {
            addCriterion("doctor_first =", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstNotEqualTo(String value) {
            addCriterion("doctor_first <>", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstGreaterThan(String value) {
            addCriterion("doctor_first >", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_first >=", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstLessThan(String value) {
            addCriterion("doctor_first <", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstLessThanOrEqualTo(String value) {
            addCriterion("doctor_first <=", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstLike(String value) {
            addCriterion("doctor_first like", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstNotLike(String value) {
            addCriterion("doctor_first not like", value, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstIn(List<String> values) {
            addCriterion("doctor_first in", values, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstNotIn(List<String> values) {
            addCriterion("doctor_first not in", values, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstBetween(String value1, String value2) {
            addCriterion("doctor_first between", value1, value2, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorFirstNotBetween(String value1, String value2) {
            addCriterion("doctor_first not between", value1, value2, "doctorFirst");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondIsNull() {
            addCriterion("doctor_second is null");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondIsNotNull() {
            addCriterion("doctor_second is not null");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondEqualTo(String value) {
            addCriterion("doctor_second =", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondNotEqualTo(String value) {
            addCriterion("doctor_second <>", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondGreaterThan(String value) {
            addCriterion("doctor_second >", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondGreaterThanOrEqualTo(String value) {
            addCriterion("doctor_second >=", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondLessThan(String value) {
            addCriterion("doctor_second <", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondLessThanOrEqualTo(String value) {
            addCriterion("doctor_second <=", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondLike(String value) {
            addCriterion("doctor_second like", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondNotLike(String value) {
            addCriterion("doctor_second not like", value, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondIn(List<String> values) {
            addCriterion("doctor_second in", values, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondNotIn(List<String> values) {
            addCriterion("doctor_second not in", values, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondBetween(String value1, String value2) {
            addCriterion("doctor_second between", value1, value2, "doctorSecond");
            return (Criteria) this;
        }

        public Criteria andDoctorSecondNotBetween(String value1, String value2) {
            addCriterion("doctor_second not between", value1, value2, "doctorSecond");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}